The demand for high quality video continually increases. With the advent of 4K and 8K video formats that require the processing of large amounts of video data, improvements to video encoding and decoding efficiency in the compression of such video data are needed. Furthermore, consumers expect the transmission and reception of high quality video across various transmission mediums. For example, consumers expect high quality video obtained over a network for viewing on portable devices, such as smartphones, tablets, and laptops, as well as on home televisions and computers. Consumers also expect high quality video for display during teleconferencing and screen sharing, for example.
The High Efficiency Video Coding (HEVC) standard H.265, implemented a new standard aimed at improving the performance of video encoding and decoding during video compression. Developed by the ISO/IEC JTC 1/SC 29/WG 11 Moving Picture Experts Group (MPEG) and the ITU-T SG16 Video Coding Experts Group (VCEG), HEVC reduces the data rate needed to compress high quality video in comparison to the previous standard, Advanced Video Coding (AVC). AVC is also known as H.264.
HEVC utilizes various coding tools, including inter prediction and intra prediction techniques to compress video during coding. Inter prediction techniques utilize temporal redundancies between different video frames in a video stream to compress video data. For example, a video frame being currently encoded may utilize portions of previously encoded and decoded video frames containing similar content. These portions of previously encoded and decoded video frames may be used to predict encoding of areas of the current video frame containing similar content. In contrast, intra prediction utilizes only video data within the currently encoded video frame to compress video data. No temporal redundancies between different video frames are employed in intra prediction techniques. For example, encoding of a current video frame may utilize other portions of the same frame. Intra prediction features 35 intra modes, with the modes including a Planar mode, a DC mode, and 33 directional modes.
HEVC also uses expansive partitioning and dividing of each input video frame compared to AVC. AVC relies only on macroblock division of an input video frame for its encoding and decoding. In contrast, HEVC may divide an input video frame into various data units and blocks that are sized differently, as will be described in more detail below. This aspect of HEVC provides improved flexibility in the encoding and decoding of video frames featuring large amounts of motion, detail, and edges, for example, and allows for efficiency gains over AVC.
Additional coding tools that further improve video coding under HEVC have been proposed for inclusion in the standard. These coding tools are named coding extensions. The Screen Content Coding (SCC) extension is a proposed extension that focuses on improving processing performance related to video screen content under the HEVC standard. Screen content is video containing a significant portion of rendered graphics, text, or animation, rather than camera captured video scenes. The rendered graphics, text, or animation may be moving or static, and may also be provided in a video feed in addition to camera captured video scenes. Example applications implicating SCC may include screen mirroring, cloud gaming, wireless display of content, displays generated during remote computer desktop access, and screen sharing, such as real-time screen sharing during video conferencing.
One coding tool included in SCC is the adaptive color transform (ACT). For example, an adaptive coding, transmission and efficient display of multimedia is disclosed in US patent publication No. 20140307785. The ACT is a color space transform applied to residue pixel samples of a coding unit (CU). For certain color spaces, correlations between color components of a pixel within a CU are present. When a correlation between color components of a pixel is high, performing the ACT on the pixel may help concentrate the energy of correlated color components by de-correlating the color components. Such concentrated energy allows for more efficient coding and decreased coding cost. Thus, the ACT may improve coding performance during HEVC coding.
However, evaluating whether to enable ACT, requires an additional rate distortion optimization (RDO) check during encoding, where the RDO check evaluates a rate distortion (RD) cost of the coding mode with enabled ACT. Such evaluations may increase both coding complexity and coding time. Furthermore, the ACT may not be necessary when color components of a pixel are already de-correlated. In such a case, further de-correlation of color components may not provide any benefit because the cost of performing the ACT is higher than coding performance gains.